#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "genero.h"
#include "duracion.h"
#include "musica.h"
#include "album.h"
#include "artista.h"

// Constructor
TArtista artista_crear(char *nombre, TAlbum m[])
{
   TArtista f = malloc(sizeof(Artista));
   f->nombre = malloc(sizeof(char) * strlen(nombre));
   if ( f != NULL ) {
      artista_set_nombre(f, nombre);//strcpy(f->nombre, nombre) 
   	if (m != NULL)
      	    artista_set_album(f, m);
        
   }
   return f;
}

// Destructor
void artista_destruir(TArtista f)
{
   if ( f != NULL ){
      if (f->nombre != NULL)
          free(f->nombre);
      free(f);
    }
}

void artista_imprimir(TArtista f)
{
   if ( f != NULL ){
      printf("ARTISTA: %s\n", artista_get_nombre(f));
      printf("--------------------------------------\n");
      int i = 0;
      for (i = 0; i < ALBUM_X_ARTISTA; i++) {
          album_imprimir(f->album[i]);
      }
   }
}

void artista_set_nombre(TArtista f, char *nombre)
{
   if ( f != NULL ) {
     strcpy(f->nombre, nombre); //f->nombre = nombre;
   
   }
}

char *  artista_get_nombre(TArtista f)
{
   if ( f != NULL )
      return f->nombre;
}


void artista_set_album(TArtista f, TAlbum m[])
{
   if ( f != NULL ) {
      int i = 0;
      for (i = 0; i <= ALBUM_X_ARTISTA; i++) {
          f->album[i] = m[i];
      }
   }
} 

TAlbum *  artista_get_album(TArtista f)
{
   if ( f != NULL )
      return f->album;
}

